Compilation Order Matters
نویسندگان
چکیده
At design time, the compiler writer selects a set of optimizations and an order in which to apply them. These choices have a direct impact on the quality of code that the compiler can generate. They also determine, to a great extent, the set of programs for which the compiler generates good code. Making good choices is difficult for several reasons. The sheer number of transformations that have been described in the literature is daunting. The relationship between features of the input program and improvements (or degradations) produced by a transformation is not formally characterized. The interactions between these transformations are poorly understood. Finally, many of the existing transformations have overlapping effects, either singly or in combination. We have built a prototype adaptive compiler that changes its selection of transformations and its application order based on the input program, the performance characteristics of the target machine, and an explicit external objective function. This adaptive compiler performs a series of experiments to find a sequence of optimizations that minimizes the objective function. This prototype compiler lets us explore the impact of transformation selection and ordering on the code that the compiler produces. This paper describes our prototype adaptive compiler. It presents experimental results that demonstrate the impact of program specific optimization sequences. It begins to characterize the search space in which the adaptive compiler operates.
منابع مشابه
Compilation Order Matters: Exploring the Structure of the Space of Compilation Sequences Using Randomized Search Algorithms†
Most modern compilers operate by applying a fixed sequence of code optimizations, called a compilation sequence, to all programs. Compiler writers determine a small set of good, general-purpose, compilation sequences by extensive hand-tuning over particular benchmarks. The compilation sequence makes a significant difference in the quality of the generated code; in particular, we know that a sin...
متن کاملExamination of Legal Matters Covered in Elementary School Textbooks
Theoretically speaking, among topics that need to be covered throughout the elementary school years, legal ones loom large. In order to determine the extent to which this coverage is actually present in elementary school textbooks, a set of 17 such books from among 51 in total, deemed appropriate for such matters to be covered in, was selected and content analyzed utilizing concepts related to ...
متن کاملThe Influence of DSP Processor Architectures on Code Compilation Difficulties
Today's DSP designers until recently were faced with the task of coding increasingly complex applications using inefficient compilers or tedious handgenerated assembly code. To make matters worse the products demanded low cost, extremely high performance and low power especially in the area of wireless communications and consumer markets. This paper examines the architectural features of severa...
متن کاملApproximate Knowledge Compilation : The First Order
Knowledge compilation procedures make a knowledge base more explicit so as make inference with respect to the compiled knowledge base tractable or at least more eecient. Most work to date in this area has been restricted to the propositional case, despite the importance of rst order theories for expressing knowledge concisely. Focusing on (LUB) approximate compilation (Selman and Kautz 1991), o...
متن کاملStatement of purpose.
The Norman Campus Faculty Handbook is a compilation of the University's major policies regarding faculty and academic matters, along with policies and information on the University’s facilities and general organization. Several other sources, such as the Administration and Finance Guide to Services at www.ou.edu/aa, the Staff Handbook at www.hr.ou.edu/handbook/default.asp, the Student Rights an...
متن کاملConditioning in First-Order Knowledge Compilation and Lifted Probabilistic Inference
Knowledge compilation is a powerful technique for compactly representing and efficiently reasoning about logical knowledge bases. It has been successfully applied to numerous problems in artificial intelligence, such as probabilistic inference and conformant planning. Conditioning, which updates a knowledge base with observed truth values for some propositions, is one of the fundamental operati...
متن کامل